/*
 * Copyright (c) 2025 Industrial Software Feature Database
 */
package com.comac.ins.isfd.service;

import com.comac.ins.common.mybatis.core.page.TableDataInfo;
import com.comac.ins.isfd.domain.IsfdMeshCompareTask;
import com.comac.ins.isfd.domain.bo.IsfdMeshCompareQueryBo;
import jakarta.servlet.http.HttpServletResponse;
import org.bson.Document;

/**
 * 自然网格模型对比service
 *
 * @author lj
 * @date 2025-01-13
 */
public interface IIsfdMeshCompareService {
    /**
     * 新增BDF模型对比任务
     *
     * @return 是否新增成功
     */
    Boolean createCompareTask(IsfdMeshCompareTask task);

    /**
     * 保存对比结果
     */
    void saveCompareResult(IsfdMeshCompareTask task, String taskIdStr);

    /**
     * 查询模型对比任务列表
     */
    TableDataInfo<Document> queryList(IsfdMeshCompareQueryBo queryBo);

    /**
     * 查询模型对比结果详情
     */
    Document queryResultDetail(String objectId);

    /**
     * 删除对比任务及对比结果
     */
    Boolean deleteCompareTask(String objectId);

    /**
     * 模型对比结果导出
     */
    void report(String id, HttpServletResponse response);


    /**
     * 模型对比结果导出excel的base64格式
     */
    String base64Report(String id);
}
